# -*-coding:utf-8-*-

#import wx, unittest
from controller import *
from outputResult import *
from threadCenter import *
from fn_dispatch import *
from fn_company import *
from fn_admin import *

class Pager_admin(wx.ScrolledWindow):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        #self.winWidth = 350
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        #wx.ScrolledWindow.__init__(self, self.panel, -1)
        wx.ScrolledWindow.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        #wx.ScrolledWindow.__init__(self, self.panel, style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetScrollbars(1, 1, 600, 1900)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        self.operateArea_staticbox_1 = wx.StaticBox(self.panel, -1, u"操作区域")
        self.startButton = wx.Button(self, label="Start")
        self.stopButton = wx.Button(self, label="Stop")
        self.Bind(wx.EVT_BUTTON, self.Start, self.startButton)
        self.Bind(wx.EVT_BUTTON, self.Stop, self.stopButton)
        sizer_out_1 = wx.StaticBoxSizer(self.operateArea_staticbox_1, wx.VERTICAL)
        sizer_in_1 = wx.BoxSizer(wx.HORIZONTAL)
        sizer_in_1.Add(self.startButton, 0, wx.NORMAL, 0)
        sizer_in_1.Add(self.stopButton, 0, wx.NORMAL, 0)
        sizer_out_1.Add(sizer_in_1, 0, wx.EXPAND|wx.LEFT|wx.RIGHT)
        sizer_out_1.Add((0, 3))
        sizer.Add(sizer_out_1, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 0)

        login = wx.StaticText(self, -1, u"登录")
        login.SetFont(self.fontTitle)
        login.SetForegroundColour('white')
        login.SetBackgroundColour('#777777')
        sizer.Add(login, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        login_func1 = wx.StaticText(self, -1, u" 1.登录验证", (100,30))
        sizer.Add(login_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        companyMonitor = wx.StaticText(self, -1, u"企业监控")
        companyMonitor.SetFont(self.fontTitle)
        companyMonitor.SetForegroundColour('white')
        companyMonitor.SetBackgroundColour('#777777')
        sizer.Add(companyMonitor, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        companyMonitor_func1 = wx.StaticText(self, -1, u" 1.企业监控界面获取", (100,30))
        sizer.Add(companyMonitor_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func2 = wx.StaticText(self, -1, u" 2.企业概况数据查询", (100,30))
        sizer.Add(companyMonitor_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func3 = wx.StaticText(self, -1, u" 3.更新在线时间", (100,30))
        sizer.Add(companyMonitor_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func4 = wx.StaticText(self, -1, u" 4.企业详细信息界面的获取", (100,30))
        sizer.Add(companyMonitor_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func5 = wx.StaticText(self, -1, u" 5.企业成员在线情况的获取", (100,30))
        sizer.Add(companyMonitor_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func6 = wx.StaticText(self, -1, u" 6.企业每天流量情况的获取", (100,30))
        sizer.Add(companyMonitor_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func7 = wx.StaticText(self, -1, u" 7.企业机型界面的获取", (100,30))
        sizer.Add(companyMonitor_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func8 = wx.StaticText(self, -1, u" 8.企业用户界面的获取", (100,30))
        sizer.Add(companyMonitor_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyMonitor_func9 = wx.StaticText(self, -1, u" 9.企业用户界面查询企业成员", (100,30))
        sizer.Add(companyMonitor_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        companyManage = wx.StaticText(self, -1, u"企业管理")
        companyManage.SetFont(self.fontTitle)
        companyManage.SetForegroundColour('white')
        companyManage.SetBackgroundColour('#777777')
        sizer.Add(companyManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        companyManage_func1 = wx.StaticText(self, -1, u" 1.企业新增页面获取", (100,30))
        sizer.Add(companyManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func2 = wx.StaticText(self, -1, u" 2.企业Code校验", (100,30))
        sizer.Add(companyManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func3 = wx.StaticText(self, -1, u" 3.企业Name校验", (100,30))
        sizer.Add(companyManage_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func4 = wx.StaticText(self, -1, u" 4.用户标识校验", (100,30))
        sizer.Add(companyManage_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func5 = wx.StaticText(self, -1, u" 5.企业新增", (100,30))
        sizer.Add(companyManage_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func6 = wx.StaticText(self, -1, u" 6.企业编辑界面获取", (100,30))
        sizer.Add(companyManage_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func7 = wx.StaticText(self, -1, u" 7.企业编辑界面中企业信息的获取", (100,30))
        sizer.Add(companyManage_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func8 = wx.StaticText(self, -1, u" 8.企业编辑界面中企业Code校验", (100,30))
        sizer.Add(companyManage_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func9 = wx.StaticText(self, -1, u" 9.企业编辑界面中企业名称校验", (100,30))
        sizer.Add(companyManage_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func10 = wx.StaticText(self, -1, u" 10.企业编辑", (100,30))
        sizer.Add(companyManage_func10, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func11 = wx.StaticText(self, -1, u" 11.企业重置密码", (100,30))
        sizer.Add(companyManage_func11, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        companyManage_func12 = wx.StaticText(self, -1, u" 12.企业删除", (100,30))
        sizer.Add(companyManage_func12, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))


        hardwareManage = wx.StaticText(self, -1, u"硬件管理")
        hardwareManage.SetFont(self.fontTitle)
        hardwareManage.SetForegroundColour('white')
        hardwareManage.SetBackgroundColour('#777777')
        sizer.Add(hardwareManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        hardwareManage_func1 = wx.StaticText(self, -1, u" 1.硬件新增界面获取", (100,30))
        sizer.Add(hardwareManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func2 = wx.StaticText(self, -1, u" 2.硬件新增", (100,30))
        sizer.Add(hardwareManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func3 = wx.StaticText(self, -1, u" 3.硬件编辑界面获取", (100,30))
        sizer.Add(hardwareManage_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func4 = wx.StaticText(self, -1, u" 4.硬件编辑界面版本的获取", (100,30))
        sizer.Add(hardwareManage_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func5 = wx.StaticText(self, -1, u" 5.硬件编辑", (100,30))
        sizer.Add(hardwareManage_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func6 = wx.StaticText(self, -1, u" 6.硬件删除", (100,30))
        sizer.Add(hardwareManage_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func7 = wx.StaticText(self, -1, u" 7.机型新增界面获取", (100,30))
        sizer.Add(hardwareManage_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func8 = wx.StaticText(self, -1, u" 8.机型新增", (100,30))
        sizer.Add(hardwareManage_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func9 = wx.StaticText(self, -1, u" 9.机型编辑界面加载", (100,30))
        sizer.Add(hardwareManage_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func10 = wx.StaticText(self, -1, u" 10.机型编辑界面获取", (100,30))
        sizer.Add(hardwareManage_func10, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func11 = wx.StaticText(self, -1, u" 11.机型编辑界面机型数据的获取", (100,30))
        sizer.Add(hardwareManage_func11, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func12 = wx.StaticText(self, -1, u" 12.机型编辑界面机型详情获取", (100,30))
        sizer.Add(hardwareManage_func12, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func13 = wx.StaticText(self, -1, u" 13.机型版本新增", (100,30))
        sizer.Add(hardwareManage_func13, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func14 = wx.StaticText(self, -1, u" 14.软件版本删除", (100,30))
        sizer.Add(hardwareManage_func14, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func15 = wx.StaticText(self, -1, u" 15.机型编辑", (100,30))
        sizer.Add(hardwareManage_func15, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        hardwareManage_func16 = wx.StaticText(self, -1, u" 16.机型删除", (100,30))
        sizer.Add(hardwareManage_func16, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        maintainManage = wx.StaticText(self, -1, u"维修管理")
        maintainManage.SetFont(self.fontTitle)
        maintainManage.SetForegroundColour('white')
        maintainManage.SetBackgroundColour('#777777')
        sizer.Add(maintainManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        maintainManage_func1 = wx.StaticText(self, -1, u" 1.新增维修界面的获取", (100,30))
        sizer.Add(maintainManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func2 = wx.StaticText(self, -1, u" 2.新增维修界面IMEI校验", (100,30))
        sizer.Add(maintainManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func3 = wx.StaticText(self, -1, u" 3.新增维修界面对应IMEI的设备信息", (100,30))
        sizer.Add(maintainManage_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func4 = wx.StaticText(self, -1, u" 4.新增维修界面更新IMEI校验", (100,30))
        sizer.Add(maintainManage_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func5 = wx.StaticText(self, -1, u" 5.维修记录界面的获取", (100,30))
        sizer.Add(maintainManage_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func6 = wx.StaticText(self, -1, u" 6.维修记录界面待维修记录的获取", (100,30))
        sizer.Add(maintainManage_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func7 = wx.StaticText(self, -1, u" 7.维修记录界面维修中记录的获取", (100,30))
        sizer.Add(maintainManage_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func8 = wx.StaticText(self, -1, u" 8.维修记录界面已维修记录的获取", (100,30))
        sizer.Add(maintainManage_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func9 = wx.StaticText(self, -1, u" 9.维修记录界面待维修的编辑界面获取", (100,30))
        sizer.Add(maintainManage_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func10 = wx.StaticText(self, -1, u" 10.维修记录界面待维修的编辑界面编辑", (100,30))
        sizer.Add(maintainManage_func10, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        maintainManage_func11 = wx.StaticText(self, -1, u" 11.维修记录界面已维修的详情界面获取", (100,30))
        sizer.Add(maintainManage_func11, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        rightsManage = wx.StaticText(self, -1, u"权限管理")
        rightsManage.SetFont(self.fontTitle)
        rightsManage.SetForegroundColour('white')
        rightsManage.SetBackgroundColour('#777777')
        sizer.Add(rightsManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        rightsManage_func1 = wx.StaticText(self, -1, u" 1.企业权限新增界面的获取", (100,30))
        sizer.Add(rightsManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func2 = wx.StaticText(self, -1, u" 2.企业权限名校验", (100,30))
        sizer.Add(rightsManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func3 = wx.StaticText(self, -1, u" 3.企业权限新增", (100,30))
        sizer.Add(rightsManage_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func4 = wx.StaticText(self, -1, u" 4.企业权限查询界面的获取", (100,30))
        sizer.Add(rightsManage_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func5 = wx.StaticText(self, -1, u" 5.企业权限编辑", (100,30))
        sizer.Add(rightsManage_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func6 = wx.StaticText(self, -1, u" 6.企业权限删除", (100,30))
        sizer.Add(rightsManage_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func7 = wx.StaticText(self, -1, u" 7.管理员权限新增界面的获取", (100,30))
        sizer.Add(rightsManage_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func8 = wx.StaticText(self, -1, u" 8.管理员权限名校验", (100,30))
        sizer.Add(rightsManage_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func9 = wx.StaticText(self, -1, u" 9.管理员权限新增", (100,30))
        sizer.Add(rightsManage_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func10 = wx.StaticText(self, -1, u" 10.管理员权限编辑界面的获取", (100,30))
        sizer.Add(rightsManage_func10, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func11 = wx.StaticText(self, -1, u" 11.管理员权限编辑", (100,30))
        sizer.Add(rightsManage_func11, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        rightsManage_func12 = wx.StaticText(self, -1, u" 12.管理员权限删除", (100,30))
        sizer.Add(rightsManage_func12, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        secondAdministratorManage = wx.StaticText(self, -1, u"二级管理员管理")
        secondAdministratorManage.SetFont(self.fontTitle)
        secondAdministratorManage.SetForegroundColour('white')
        secondAdministratorManage.SetBackgroundColour('#777777')
        sizer.Add(secondAdministratorManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        secondAdministratorManage_func1 = wx.StaticText(self, -1, u" 1.二级管理员新增界面的获取", (100,30))
        sizer.Add(secondAdministratorManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func2 = wx.StaticText(self, -1, u" 2.二级管理员账号验证", (100,30))
        sizer.Add(secondAdministratorManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func3 = wx.StaticText(self, -1, u" 3.二级管理员新增", (100,30))
        sizer.Add(secondAdministratorManage_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func4 = wx.StaticText(self, -1, u" 4.二级管理员编辑界面的获取", (100,30))
        sizer.Add(secondAdministratorManage_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func5 = wx.StaticText(self, -1, u" 5.二级管理员编辑界面管理员信息的虎丘", (100,30))
        sizer.Add(secondAdministratorManage_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func6 = wx.StaticText(self, -1, u" 6.二级管理员编辑", (100,30))
        sizer.Add(secondAdministratorManage_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func7 = wx.StaticText(self, -1, u" 7.二级管理员账号的启用与禁用", (100,30))
        sizer.Add(secondAdministratorManage_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func8 = wx.StaticText(self, -1, u" 8.二级管理员重置密码", (100,30))
        sizer.Add(secondAdministratorManage_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        secondAdministratorManage_func9 = wx.StaticText(self, -1, u" 9.二级管理员删除", (100,30))
        sizer.Add(secondAdministratorManage_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        imeiManage = wx.StaticText(self, -1, u"IMEI号管理")
        imeiManage.SetFont(self.fontTitle)
        imeiManage.SetForegroundColour('white')
        imeiManage.SetBackgroundColour('#777777')
        sizer.Add(imeiManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        imeiManage_func1 = wx.StaticText(self, -1, u" 1.IMEI号搜索界面的获取", (100,30))
        sizer.Add(imeiManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        imeiManage_func2 = wx.StaticText(self, -1, u" 2.IMEI号搜索界面的模糊查询的加载", (100,30))
        sizer.Add(imeiManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))


        loginOut = wx.StaticText(self, -1, u"退出")
        loginOut.SetFont(self.fontTitle)
        loginOut.SetForegroundColour('white')
        loginOut.SetBackgroundColour('#777777')
        sizer.Add(loginOut, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        loginOut_func1 = wx.StaticText(self, -1, u" 1.密码修改界面的获取", (100,30))
        sizer.Add(loginOut_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        loginOut_func2 = wx.StaticText(self, -1, u" 2.退出登录", (100,30))
        sizer.Add(loginOut_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        loginOut_func3 = wx.StaticText(self, -1, u" 3.登录界面的获取", (100,30))
        sizer.Add(loginOut_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        self.Layout()

    def Start(self, event):
        self.cpu["data"].thread_unitTest = thread_unitTest(self.StartTest)

    def Stop(self, event):
        log.TestLog(u"关闭企业管理平台测试",'')
        self.cpu["data"].thread_unitTest.terminate()
        self.cpu["data"].thread_unitTest.join()
        self.cpu["data"].thread_unitTest.isAlive()
        self.cpu["data"].inTest = False

    def StartTest(self):
        self.cpu["data"].testResult = []
        self.cpu["data"].reportDetails = []

        if self.cpu["data"].inTest == True:
            log.TestLog(u"测试正在进行中，请稍后再试...")
            return
        else:
            log.TestLog(u"开启企业管理平台测试",'')
            self.startTime = time.time()
            interface_objCompany = interfaceSet_admin(self.cpu)
            self.endTime = time.time()
            self.useTime = self.endTime - self.startTime
            log.TestLog('Ran '+str(interface_objCompany.test_sum)+' test in ' + '%.3f seconds' % self.useTime)
            outputExcel(self.cpu["data"].testResult)

class Pager_company(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        self.operateArea_staticbox_1 = wx.StaticBox(self.panel, -1, u"操作区域")
        self.startButton = wx.Button(self, label="Start")
        self.stopButton = wx.Button(self, label="Stop")
        self.Bind(wx.EVT_BUTTON, self.Start, self.startButton)
        self.Bind(wx.EVT_BUTTON, self.Stop, self.stopButton)
        sizer_out_1 = wx.StaticBoxSizer(self.operateArea_staticbox_1, wx.VERTICAL)
        sizer_in_1 = wx.BoxSizer(wx.HORIZONTAL)
        sizer_in_1.Add(self.startButton, 0, wx.NORMAL, 0)
        sizer_in_1.Add(self.stopButton, 0, wx.NORMAL, 0)
        sizer_out_1.Add(sizer_in_1, 0, wx.EXPAND|wx.LEFT|wx.RIGHT)
        sizer_out_1.Add((0, 3))
        sizer.Add(sizer_out_1, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 0)

        login = wx.StaticText(self, -1, u"登录")
        login.SetFont(self.fontTitle)
        login.SetForegroundColour('white')
        login.SetBackgroundColour('#777777')
        sizer.Add(login, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        login_func1 = wx.StaticText(self, -1, u" 1.登录验证", (100,30))
        sizer.Add(login_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func2 = wx.StaticText(self, -1, u" 2.主页面获取", (100,30))
        sizer.Add(login_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        #login_func3 = wx.StaticText(self, -1, u" 3.登录页面获取", (100,30))
        #sizer.Add(login_func3, 0, wx.EXPAND | wx.LEFT, 0)
        #sizer.Add((0, 5))

        group = wx.StaticText(self, -1, u"企业群组管理")
        group.SetFont(self.fontTitle)
        group.SetForegroundColour('white')
        group.SetBackgroundColour('#777777')
        sizer.Add(group, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        group_func1 = wx.StaticText(self, -1, u" 1.获取群组添加页面", (100,30))
        sizer.Add(group_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        group_func2 = wx.StaticText(self, -1, u" 2.群组名称的校验", (100,30))
        sizer.Add(group_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        group_func3 = wx.StaticText(self, -1, u" 3.添加群组", (100,30))
        sizer.Add(group_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        group_func4 = wx.StaticText(self, -1, u" 4.获取群组编辑界面", (100,30))
        sizer.Add(group_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        group_func5 = wx.StaticText(self, -1, u" 5.群组编辑", (100,30))
        sizer.Add(group_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        group_func6 = wx.StaticText(self, -1, u" 6.群组启用禁用", (100,30))
        sizer.Add(group_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        group_func7 = wx.StaticText(self, -1, u" 7.群组删除", (100,30))
        sizer.Add(group_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        user = wx.StaticText(self, -1, u"企业用户管理")
        user.SetFont(self.fontTitle)
        user.SetForegroundColour('white')
        user.SetBackgroundColour('#777777')
        sizer.Add(user, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        user_func1 = wx.StaticText(self, -1, u" 1.获取企业用户增加页面", (100,30))
        sizer.Add(user_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func2 = wx.StaticText(self, -1, u" 2.企业用户增加的Code校验", (100,30))
        sizer.Add(user_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func3 = wx.StaticText(self, -1, u" 3.企业用户增加的Imei校验", (100,30))
        sizer.Add(user_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func4 = wx.StaticText(self, -1, u" 4.企业用户增加", (100,30))
        sizer.Add(user_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func5 = wx.StaticText(self, -1, u" 5.企业用户编辑页面获取", (100,30))
        sizer.Add(user_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func6 = wx.StaticText(self, -1, u" 6.企业用户编辑", (100,30))
        sizer.Add(user_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func7 = wx.StaticText(self, -1, u" 7.企业用户禁用", (100,30))
        sizer.Add(user_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func8 = wx.StaticText(self, -1, u" 8.企业用户重置密码", (100,30))
        sizer.Add(user_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        user_func9 = wx.StaticText(self, -1, u" 9.企业用户删除", (100,30))
        sizer.Add(user_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        admin = wx.StaticText(self, -1, u"企业管理员管理")
        admin.SetFont(self.fontTitle)
        admin.SetForegroundColour('white')
        admin.SetBackgroundColour('#777777')
        sizer.Add(admin, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        admin_func1 = wx.StaticText(self, -1, u" 1.企业管理员增加界面", (100,30))
        sizer.Add(admin_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        admin_func2 = wx.StaticText(self, -1, u" 2.企业管理员增加校验", (100,30))
        sizer.Add(admin_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        admin_func3 = wx.StaticText(self, -1, u" 3.企业管理员增加", (100,30))
        sizer.Add(admin_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        admin_func4 = wx.StaticText(self, -1, u" 4.企业管理员编辑页面获取", (100,30))
        sizer.Add(admin_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        admin_func5 = wx.StaticText(self, -1, u" 5.企业管理员编辑", (100,30))
        sizer.Add(admin_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        admin_func6 = wx.StaticText(self, -1, u" 6.企业管理员禁用", (100,30))
        sizer.Add(admin_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        admin_func7 = wx.StaticText(self, -1, u" 7.企业管理员密码重置", (100,30))
        sizer.Add(admin_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        admin_func8 = wx.StaticText(self, -1, u" 8.企业管理员删除", (100,30))
        sizer.Add(admin_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        loginOut = wx.StaticText(self, -1, u"退出")
        loginOut.SetFont(self.fontTitle)
        loginOut.SetForegroundColour('white')
        loginOut.SetBackgroundColour('#777777')
        sizer.Add(loginOut, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        loginOut_func1 = wx.StaticText(self, -1, u" 1.退出登录", (100,30))
        sizer.Add(loginOut_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        self.Layout()

    def Start(self, event):
        self.cpu["data"].thread_unitTest = thread_unitTest(self.StartTest)

    def Stop(self, event):
        log.TestLog(u"关闭企业管理平台测试",'')
        self.cpu["data"].thread_unitTest.terminate()
        self.cpu["data"].thread_unitTest.join()
        self.cpu["data"].thread_unitTest.isAlive()
        self.cpu["data"].inTest = False

    def StartTest(self):
        self.cpu["data"].testResult = []
        self.cpu["data"].reportDetails = []

        if self.cpu["data"].inTest == True:
            log.TestLog(u"测试正在进行中，请稍后再试...")
            return
        else:
            log.TestLog(u"开启企业管理平台测试",'')
            self.startTime = time.time()
            interface_objCompany = interfaceSet_company(self.cpu)
            self.endTime = time.time()
            self.useTime = self.endTime - self.startTime
            log.TestLog('Ran '+str(interface_objCompany.test_sum)+' test in ' + '%.3f seconds' % self.useTime)
            outputExcel(self.cpu["data"].testResult)

class Pager_wz_login(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.cpu = cpu
        self.panel = panel
        self.testType = testType
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["16_b"]
        self.fontContent = self.cpu["font"]["12_n"]
        self.row = [[None] * 5 for row in range(10)]
        self.lineSizer = [None] * 10

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)
        # the title
        self.title = StaticLabel(self, -1, font=self.fontTitle, pos=(0, 0),
                                 size=(self.winWidth, self.titleHeight))
        self.titleLine = StaticLabel(self, -1, "", bgColor=("#b2b2b2"), size=(self.winWidth, 2))
        # the content
        self.row[0][0] = StaticLabel(self, -1, u"账号", align="left", bgColor="#ffffff",
                                     size=(self.winWidth / 2, self.contentLine_height))
        self.row[0][1] = wx.TextCtrl(self, -1, "fxs00001", size=(self.winWidth / 2, self.contentLine_height))

        self.row[1][0] = StaticLabel(self, -1, u"密码", align="left", bgColor="#ffffff",
                                     size=(self.winWidth / 2, self.contentLine_height))
        self.row[1][1] = wx.TextCtrl(self, -1, "123456", size=(self.winWidth / 2, self.contentLine_height))

        self.row[2][0] = wx.Button(self, -1, label=u"执行测试", size=(self.winWidth / 4, self.contentLine_height))
        # 事件的绑定
        self.Bind(wx.EVT_BUTTON, self.OnExecute, self.row[2][0])

        # the defined of the BoxSizers
        self.pageSizer = wx.BoxSizer(wx.VERTICAL)
        self.titleSizer = wx.BoxSizer(wx.VERTICAL)
        self.contentSizer = wx.BoxSizer(wx.VERTICAL)
        self.lineSizer[0] = wx.BoxSizer(wx.HORIZONTAL)
        self.lineSizer[1] = wx.BoxSizer(wx.HORIZONTAL)
        self.lineSizer[2] = wx.BoxSizer(wx.HORIZONTAL)
        # the realization of the layout
        self.titleSizer.AddMany([
            (self.title, 0, wx.LEFT | wx.RIGHT),
            (self.titleLine, 0, wx.BOTTOM)
        ])
        self.lineSizer[0].AddMany([
            (self.row[0][0], 0, wx.LEFT),
            (self.row[0][1], 2, wx.RIGHT),
        ])
        self.lineSizer[1].AddMany([
            (self.row[1][0], 0, wx.LEFT),
            (self.row[1][1], 2, wx.RIGHT),
        ])
        self.lineSizer[2].AddMany([
            (self.row[2][0], 0, wx.CENTER)
        ])
        # the layout of the complete
        self.pageSizer.Add(self.titleSizer, proportion=0, flag=wx.TOP | wx.LEFT | wx.RIGHT, border=0)
        self.contentSizer.AddMany([
            (self.lineSizer[0], 0, wx.LEFT | wx.RIGHT),
            (self.lineSizer[1], 0, wx.LEFT | wx.RIGHT),
            (self.lineSizer[2], 0, wx.CENTER)
        ])
        self.pageSizer.Add(self.contentSizer, proportion=1, flag=wx.EXPAND | wx.ALL, border=0)
        self.SetSizer(self.pageSizer)
        self.Layout()

    def OnExecute(self, event):

        caseNum = 0
        self.startTime = time.time()
        objHttpPost = TestHttpPost(self.cpu)
        for key1 in objHttpPost.caseSet:
            for key2 in range(len(objHttpPost.caseSet[key1])):
                caseNum+=1
                print objHttpPost.caseSet[key1][key2]
                objHttpPost.execStr(objHttpPost.caseSet[key1][key2])
        self.endTime = time.time()
        self.useTime = self.endTime - self.startTime

        log.TestLog('Ran '+str(caseNum)+' test in ' + '%.3f seconds' % self.useTime)
        outputExcel(self.cpu["data"].testResult)

        #suite = unittest.TestSuite()
        #suite.addTest(TestHttpPost_bak("test_normal"))
        #suite.addTest(TestHttpPost_bak("test_abnormal_1"))
        #suite.addTest(TestHttpPost_bak("test_abnormal_2"))
        #suite.addTest(TestHttpPost_bak("test_abnormal_3"))
        #suite.addTest(TestHttpPost_bak("test_abnormal_4"))
        #suite.addTest(TestHttpPost_bak("test_abnormal_5"))
        #suite.addTest(TestHttpPost_bak("test_abnormal_6"))
        #runner = unittest.TextTestRunner()
        #runner.run(suite)

        '''
        log.debug("Start to excute the first test case!")
        username = self.row[0][1].GetValue()
        password = self.row[1][1].GetValue()
        # username = 'fxs00001'
        # password = '123456'
        timestamp = getTimestamp()
        userType = '1'
        deviceId = ''
        FN_KEY = 'AZ-FN-CODEC-KEY'

        ajaxRequestBody = getToken(
            {'userCode': username, 'password': md5(password), 'timestamp': str(timestamp),
             'userType': userType, 'deviceId': ''}, FN_KEY)
        log.debug("username: " + username + " password: " + password)
        response = HttpClientPost(ajaxRequestBody, "114.55.63.81", "80", "/fn/app/login.do")
        log.info(response["content"])

        self.cpu["data"].testResultAppend(u'行政管理', u'行政信息管理界面的动态交互', u'确认“编辑”按钮能使用', '', u'点击"编辑"按钮',
                                          u'界面上弹出编辑队伍窗口并显示遮罩层', u'界面上没有编辑按钮', u'改进', u'一般', u'WZ-1.0-02-06-1', u'范训山',
                                          u'Linyy')

        outputExcel(self.cpu["data"].testResult)

        # insertData("testResult", self.cpu["data"].testResult)
        # queryData("testResult")  # 查询数据
        '''

class Pager_dispatch(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        self.operateArea_staticbox_1 = wx.StaticBox(self.panel, -1, u"操作区域")
        self.startButton = wx.Button(self, label="Start")
        self.stopButton = wx.Button(self, label="Stop")
        self.Bind(wx.EVT_BUTTON, self.Start, self.startButton)
        self.Bind(wx.EVT_BUTTON, self.Stop, self.stopButton)
        sizer_out_1 = wx.StaticBoxSizer(self.operateArea_staticbox_1, wx.VERTICAL)
        sizer_in_1 = wx.BoxSizer(wx.HORIZONTAL)

        #sizer_in_1.Add((5,0))
        sizer_in_1.Add(self.startButton, 0, wx.NORMAL, 0)
        sizer_in_1.Add(self.stopButton, 0, wx.NORMAL, 0)

        #sizer_out_1.Add((0,5))
        sizer_out_1.Add(sizer_in_1, 0, wx.EXPAND|wx.LEFT|wx.RIGHT)
        sizer_out_1.Add((0, 3))
        #operateAreaSizer.Add((0,5))

        sizer.Add(sizer_out_1, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 0)

        login = wx.StaticText(self, -1, u"登录")
        login.SetFont(self.fontTitle)
        login.SetForegroundColour('white')
        login.SetBackgroundColour('#777777')
        sizer.Add(login, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        login_func1 = wx.StaticText(self, -1, u" 1.提示信息", (100,30))
        sizer.Add(login_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func2 = wx.StaticText(self, -1, u" 2.记录账号与密码", (100,30))
        sizer.Add(login_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func3 = wx.StaticText(self, -1, u" 3.重复登录", (100,30))
        sizer.Add(login_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func4 = wx.StaticText(self, -1, u" 4.账号退出", (100,30))
        sizer.Add(login_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func5 = wx.StaticText(self, -1, u" 5.修改密码", (100,30))
        sizer.Add(login_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        groupList = wx.StaticText(self, -1, u"微站统计界面")
        groupList.SetFont(self.fontTitle)
        groupList.SetForegroundColour('white')
        groupList.SetBackgroundColour('#777777')
        sizer.Add(groupList, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        groupList_func1 = wx.StaticText(self, -1, u" 1.群组信息的展示", (100,30))
        sizer.Add(groupList_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        groupList_func2 = wx.StaticText(self, -1, u" 2.群组成员显示", (100,30))
        sizer.Add(groupList_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        groupList_func3 = wx.StaticText(self, -1, u" 3.进入群组逻辑", (100,30))
        sizer.Add(groupList_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        groupList_func4 = wx.StaticText(self, -1, u" 3.群组的切换", (100,30))
        sizer.Add(groupList_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        groupList_func5 = wx.StaticText(self, -1, u" 3.群组成员搜索", (100,30))
        sizer.Add(groupList_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        map = wx.StaticText(self, -1, u"地图")
        map.SetFont(self.fontTitle)
        map.SetForegroundColour('white')
        map.SetBackgroundColour('#777777')
        sizer.Add(map, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        map_func1 = wx.StaticText(self, -1, u" 1.地图操作区", (100,30))
        sizer.Add(map_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        map_func2 = wx.StaticText(self, -1, u" 2.位置坐标", (100,30))
        sizer.Add(map_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        singleCall = wx.StaticText(self, -1, u"单呼")
        singleCall.SetFont(self.fontTitle)
        singleCall.SetForegroundColour('white')
        singleCall.SetBackgroundColour('#777777')
        sizer.Add(singleCall, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        singleCall_func1 = wx.StaticText(self, -1, u" 1.单呼的发起", (100,30))
        sizer.Add(singleCall_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        singleCall_func2 = wx.StaticText(self, -1, u" 2.单呼的挂断", (100,30))
        sizer.Add(singleCall_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        singleCall_func3 = wx.StaticText(self, -1, u" 3.单呼状态下断网处理", (100,30))
        sizer.Add(singleCall_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        intercom = wx.StaticText(self, -1, u"对讲")
        intercom.SetFont(self.fontTitle)
        intercom.SetForegroundColour('white')
        intercom.SetBackgroundColour('#777777')
        sizer.Add(intercom, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        intercom_func1 = wx.StaticText(self, -1, u" 1.当前组显示", (100,30))
        sizer.Add(intercom_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        intercom_func2 = wx.StaticText(self, -1, u" 2.PTT按键", (100,30))
        sizer.Add(intercom_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        intercom_func3 = wx.StaticText(self, -1, u" 3.提示音", (100,30))
        sizer.Add(intercom_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        intercom_func4 = wx.StaticText(self, -1, u" 4.状态显示", (100,30))
        sizer.Add(intercom_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        tempGroup = wx.StaticText(self, -1, u"临时组")
        tempGroup.SetFont(self.fontTitle)
        tempGroup.SetForegroundColour('white')
        tempGroup.SetBackgroundColour('#777777')
        sizer.Add(tempGroup, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        tempGroup_func1 = wx.StaticText(self, -1, u" 1.邀请成员", (100,30))
        sizer.Add(tempGroup_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        tempGroup_func2 = wx.StaticText(self, -1, u" 2.临时组成员离开及掉线", (100,30))
        sizer.Add(tempGroup_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        tempGroup_func3 = wx.StaticText(self, -1, u" 3.临时组成员排序", (100,30))
        sizer.Add(tempGroup_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        tempGroup_func4 = wx.StaticText(self, -1, u" 4.临时组的接听和挂断逻辑", (100,30))
        sizer.Add(tempGroup_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        tempGroup_func5 = wx.StaticText(self, -1, u" 5.临时组状态下断网处理", (100,30))
        sizer.Add(tempGroup_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        tempGroup_func6 = wx.StaticText(self, -1, u" 6.其它", (100,30))
        sizer.Add(tempGroup_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        broadcast = wx.StaticText(self, -1, u"广播")
        broadcast.SetFont(self.fontTitle)
        broadcast.SetForegroundColour('white')
        broadcast.SetBackgroundColour('#777777')
        sizer.Add(broadcast, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        broadcast_func1 = wx.StaticText(self, -1, u" 1.发起广播", (100,30))
        sizer.Add(broadcast_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        broadcast_func2 = wx.StaticText(self, -1, u" 2.广播的接听与挂断逻辑", (100,30))
        sizer.Add(broadcast_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        broadcast_func3 = wx.StaticText(self, -1, u" 3.广播状态下的断网处理", (100,30))
        sizer.Add(broadcast_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        dataInteract = wx.StaticText(self, -1, u"数据交互及其它")
        dataInteract.SetFont(self.fontTitle)
        dataInteract.SetForegroundColour('white')
        dataInteract.SetBackgroundColour('#777777')
        sizer.Add(dataInteract, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        dataInteract_func1 = wx.StaticText(self, -1, u" 1.在CMP平台禁用/删除已经登录的账号", (100,30))
        sizer.Add(dataInteract_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        dataInteract_func2 = wx.StaticText(self, -1, u" 2.在CMP平台对成员添加/删除/禁用/启用", (100,30))
        sizer.Add(dataInteract_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        dataInteract_func3 = wx.StaticText(self, -1, u" 3.在CMP平台对群组新建/删除/禁用/启用", (100,30))
        sizer.Add(dataInteract_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        dataInteract_func4 = wx.StaticText(self, -1, u" 4.其它", (100,30))
        sizer.Add(dataInteract_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        self.Layout()

    def Start(self, event):
        self.cpu["data"].thread_unitTest = thread_unitTest(self.StartTest)

    def Stop(self, event):
        log.TestLog(u"关闭调度台测试",'')
        self.cpu["data"].thread_unitTest.terminate()
        self.cpu["data"].thread_unitTest.join()
        self.cpu["data"].thread_unitTest.isAlive()
        self.cpu["data"].inTest = False

    def StartTest(self):
        if self.cpu["data"].inTest == True:
            log.TestLog(u"测试正在进行中，请稍后再试...")
            return
        else:
            log.TestLog(u"开启调度台测试",'')
            self.startTime = time.time()
            objHttpPost = TestHttpPost(self.cpu)
            self.endTime = time.time()
            self.useTime = self.endTime - self.startTime
            log.TestLog('Ran '+str(objHttpPost.test_sum)+' test in ' + '%.3f seconds' % self.useTime)
            outputExcel(self.cpu["data"].testResult)

class Pager_wz(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        self.operateArea_staticbox_1 = wx.StaticBox(self.panel, -1, u"操作区域")
        self.startButton = wx.Button(self, label="Start")
        self.stopButton = wx.Button(self, label="Stop")
        sizer_out_1 = wx.StaticBoxSizer(self.operateArea_staticbox_1, wx.VERTICAL)
        sizer_in_1 = wx.BoxSizer(wx.HORIZONTAL)

        sizer_in_1.Add(self.startButton, 0, wx.NORMAL, 0)
        sizer_in_1.Add(self.stopButton, 0, wx.NORMAL, 0)

        sizer_out_1.Add(sizer_in_1, 0, wx.EXPAND|wx.LEFT|wx.RIGHT)
        sizer_out_1.Add((0, 3))

        sizer.Add(sizer_out_1, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 0)

        login = wx.StaticText(self, -1, u"登录页面")
        login.SetFont(self.fontTitle)
        login.SetForegroundColour('white')
        login.SetBackgroundColour('#777777')
        sizer.Add(login, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        login_func1 = wx.StaticText(self, -1, u" 1.登录页面验证", (100,30))
        sizer.Add(login_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func2 = wx.StaticText(self, -1, u" 2.记住密码验证", (100,30))
        sizer.Add(login_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func3 = wx.StaticText(self, -1, u" 3.正常登录验证", (100,30))
        sizer.Add(login_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func4 = wx.StaticText(self, -1, u" 4.页面元素验证", (100,30))
        sizer.Add(login_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        groupList = wx.StaticText(self, -1, u"微站统计界面")
        groupList.SetFont(self.fontTitle)
        groupList.SetForegroundColour('white')
        groupList.SetBackgroundColour('#777777')
        sizer.Add(groupList, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        groupList_func1 = wx.StaticText(self, -1, u" 1.统计界面的检查测试", (100,30))
        sizer.Add(groupList_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        groupList_func2 = wx.StaticText(self, -1, u" 2.总队权限下全部微站的过滤测试", (100,30))
        sizer.Add(groupList_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        groupList_func3 = wx.StaticText(self, -1, u" 3.统计界面的功能按钮测试", (100,30))
        sizer.Add(groupList_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        map = wx.StaticText(self, -1, u"微站管理界面")
        map.SetFont(self.fontTitle)
        map.SetForegroundColour('white')
        map.SetBackgroundColour('#777777')
        sizer.Add(map, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        map_func1 = wx.StaticText(self, -1, u" 1.管理界面统计测试", (100,30))
        sizer.Add(map_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        map_func2 = wx.StaticText(self, -1, u" 2.管理界面功能按钮的测试", (100,30))
        sizer.Add(map_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        map_func3 = wx.StaticText(self, -1, u" 3.管理界面信息的检测", (100,30))
        sizer.Add(map_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        singleCall = wx.StaticText(self, -1, u"账号与行政管理界面")
        singleCall.SetFont(self.fontTitle)
        singleCall.SetForegroundColour('white')
        singleCall.SetBackgroundColour('#777777')
        sizer.Add(singleCall, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        singleCall_func1 = wx.StaticText(self, -1, u" 1.账号管理的权限测试", (100,30))
        sizer.Add(singleCall_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        singleCall_func2 = wx.StaticText(self, -1, u" 2.账号管理的界面测试", (100,30))
        sizer.Add(singleCall_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        singleCall_func3 = wx.StaticText(self, -1, u" 3.同级账号管理界面的数据测试", (100,30))
        sizer.Add(singleCall_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        singleCall_func4 = wx.StaticText(self, -1, u" 4.管理员账号信息的功能测试", (100,30))
        sizer.Add(singleCall_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        singleCall_func5 = wx.StaticText(self, -1, u" 5.行政信息管理界面的测试", (100,30))
        sizer.Add(singleCall_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        intercom = wx.StaticText(self, -1, u"微站检查界面")
        intercom.SetFont(self.fontTitle)
        intercom.SetForegroundColour('white')
        intercom.SetBackgroundColour('#777777')
        sizer.Add(intercom, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        intercom_func1 = wx.StaticText(self, -1, u" 1.微站检查界面显示的测试", (100,30))
        sizer.Add(intercom_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        intercom_func2 = wx.StaticText(self, -1, u" 2.微站检查界面功能的测试", (100,30))
        sizer.Add(intercom_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        intercom_func3 = wx.StaticText(self, -1, u" 3.微站检查界面新增窗口的功能测试", (100,30))
        sizer.Add(intercom_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        self.Layout()

class Pager_mfs(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        self.operateArea_staticbox_1 = wx.StaticBox(self.panel, -1, u"操作区域")
        self.startButton = wx.Button(self, label="Start")
        self.stopButton = wx.Button(self, label="Stop")
        sizer_out_1 = wx.StaticBoxSizer(self.operateArea_staticbox_1, wx.VERTICAL)
        sizer_in_1 = wx.BoxSizer(wx.HORIZONTAL)

        sizer_in_1.Add(self.startButton, 0, wx.NORMAL, 0)
        sizer_in_1.Add(self.stopButton, 0, wx.NORMAL, 0)

        sizer_out_1.Add(sizer_in_1, 0, wx.EXPAND|wx.LEFT|wx.RIGHT)
        sizer_out_1.Add((0, 3))

        sizer.Add(sizer_out_1, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 0)

        login = wx.StaticText(self, -1, u"登录")
        login.SetFont(self.fontTitle)
        login.SetForegroundColour('white')
        login.SetBackgroundColour('#777777')
        sizer.Add(login, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 5))

        login_func1 = wx.StaticText(self, -1, u" 1.界面检查", (100,30))
        sizer.Add(login_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func2 = wx.StaticText(self, -1, u" 2.正常登录", (100,30))
        sizer.Add(login_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func3 = wx.StaticText(self, -1, u" 3.异常登录", (100,30))
        sizer.Add(login_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func4 = wx.StaticText(self, -1, u" 4.记住密码", (100,30))
        sizer.Add(login_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func5 = wx.StaticText(self, -1, u" 5.账号退出", (100,30))
        sizer.Add(login_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        login_func6 = wx.StaticText(self, -1, u" 6.安全性", (100,30))
        sizer.Add(login_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        wzManage = wx.StaticText(self, -1, u"微站管理")
        wzManage.SetFont(self.fontTitle)
        wzManage.SetForegroundColour('white')
        wzManage.SetBackgroundColour('#777777')
        sizer.Add(wzManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        wzManage_func1 = wx.StaticText(self, -1, u" 1.界面微站记录显示", (100,30))
        sizer.Add(wzManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func2 = wx.StaticText(self, -1, u" 2.查询功能", (100,30))
        sizer.Add(wzManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func3 = wx.StaticText(self, -1, u" 3.导出微站记录表格", (100,30))
        sizer.Add(wzManage_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func4 = wx.StaticText(self, -1, u" 4.微站记录排序", (100,30))
        sizer.Add(wzManage_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func5 = wx.StaticText(self, -1, u" 5.翻页功能", (100,30))
        sizer.Add(wzManage_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func6 = wx.StaticText(self, -1, u" 6.新增微站>>>", (100,30))
        sizer.Add(wzManage_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func7 = wx.StaticText(self, -1, u" 7.编辑微站信息>>>", (100,30))
        sizer.Add(wzManage_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func8 = wx.StaticText(self, -1, u" 8.微站详情>>>", (100,30))
        sizer.Add(wzManage_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzManage_func9 = wx.StaticText(self, -1, u" 9.微站删除>>>", (100,30))
        sizer.Add(wzManage_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))


        wxCheck = wx.StaticText(self, -1, u"微站检查")
        wxCheck.SetFont(self.fontTitle)
        wxCheck.SetForegroundColour('white')
        wxCheck.SetBackgroundColour('#777777')
        sizer.Add(wxCheck, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        wxCheck_func1 = wx.StaticText(self, -1, u" 1.界面显示检查", (100,30))
        sizer.Add(wxCheck_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func2 = wx.StaticText(self, -1, u" 2.界面检查记录显示", (100,30))
        sizer.Add(wxCheck_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func3 = wx.StaticText(self, -1, u" 3.查询功能", (100,30))
        sizer.Add(wxCheck_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func4 = wx.StaticText(self, -1, u" 4.导出检查记录表格", (100,30))
        sizer.Add(wxCheck_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func5 = wx.StaticText(self, -1, u" 5.检查记录排序", (100,30))
        sizer.Add(wxCheck_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func6 = wx.StaticText(self, -1, u" 6.新增检查>>>", (100,30))
        sizer.Add(wxCheck_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func7 = wx.StaticText(self, -1, u" 7.翻页功能", (100,30))
        sizer.Add(wxCheck_func7, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func8 = wx.StaticText(self, -1, u" 8.检查详情>>>", (100,30))
        sizer.Add(wxCheck_func8, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func9 = wx.StaticText(self, -1, u" 9.删除检查>>>", (100,30))
        sizer.Add(wxCheck_func9, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wxCheck_func10 = wx.StaticText(self, -1, u" 10.批复>>>", (100,30))
        sizer.Add(wxCheck_func10, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        accountManage = wx.StaticText(self, -1, u"账号管理")
        accountManage.SetFont(self.fontTitle)
        accountManage.SetForegroundColour('white')
        accountManage.SetBackgroundColour('#777777')
        sizer.Add(accountManage, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        accountManage_func1 = wx.StaticText(self, -1, u" 1.同级账号管理>>>", (100,30))
        sizer.Add(accountManage_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        accountManage_func2 = wx.StaticText(self, -1, u" 2.管理员账号重置>>>", (100,30))
        sizer.Add(accountManage_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        accountManage_func3 = wx.StaticText(self, -1, u" 3.行政信息管理>>>", (100,30))
        sizer.Add(accountManage_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        wzStatistics = wx.StaticText(self, -1, u"微站统计")
        wzStatistics.SetFont(self.fontTitle)
        wzStatistics.SetForegroundColour('white')
        wzStatistics.SetBackgroundColour('#777777')
        sizer.Add(wzStatistics, 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 0)
        sizer.Add((0, 10))

        wzStatistics_func1 = wx.StaticText(self, -1, u" 1.界面检查", (100,30))
        sizer.Add(wzStatistics_func1, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzStatistics_func2 = wx.StaticText(self, -1, u" 2.新增检查统计", (100,30))
        sizer.Add(wzStatistics_func2, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzStatistics_func3 = wx.StaticText(self, -1, u" 3.界面显示", (100,30))
        sizer.Add(wzStatistics_func3, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzStatistics_func4 = wx.StaticText(self, -1, u" 4.新增微站的过滤", (100,30))
        sizer.Add(wzStatistics_func4, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzStatistics_func5 = wx.StaticText(self, -1, u" 5.功能按钮的检查", (100,30))
        sizer.Add(wzStatistics_func5, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))
        wzStatistics_func6 = wx.StaticText(self, -1, u" 6.其它", (100,30))
        sizer.Add(wzStatistics_func6, 0, wx.EXPAND | wx.LEFT, 0)
        sizer.Add((0, 5))

        self.Layout()

class Pager_default(wx.Panel):
    def __init__(self, panel, cpu):
        self.panel = panel
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        pageLabel = wx.StaticText(self, -1, u"这是默认加载界面，内容如下：")
        pageLabel.SetFont(self.fontTitle)
        pageLabel.SetForegroundColour('white')
        pageLabel.SetBackgroundColour('#777777')
        sizer.Add(pageLabel, 0, wx.ALIGN_CENTER | wx.EXPAND, 0)

        self.Layout()

class Pager_noPager(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)

        titleName = self.cpu["data"].treeListCompare[testType]

        pageLabel = wx.StaticText(self, -1, self.cpu["frame"].menu_projectName + titleName+u"页面尚未完成，敬请期待...")
        pageLabel.SetFont(self.fontTitle)
        pageLabel.SetForegroundColour('white')
        pageLabel.SetBackgroundColour('#777777')
        sizer.Add(pageLabel, 0, wx.ALIGN_CENTER | wx.EXPAND, 0)

        self.Layout()

class Pager_company_pressureTest(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        # create the func test panel
        panel_companyAccountAdd(self, self.cpu, 'company_createUser', u'账号创建', pos=(10,10))
        # create the func test panel
        panel_terminalOnline(self, self.cpu, 'userOnline', u'账号同时在线', pos=(270, 10))
        #panel_funcTest(self, self.cpu, 'company_createUser', u'company接口压力测试', u'批量创建企业用户', '20', u'企业管理平台服务开启，配置对应组信息', pos=(10,10))
        # create the func test panel
        #panel_funcTest(self, self.cpu, 'company_deleteUser', u'company接口压力测试', u'批量删除企业用户', '20', u'企业管理平台服务开启，配置对应组信息', pos=(415,10))

class Pager_intercom_pressureTest(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        # create a panel and set the default config
        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        # create the func test panel
        panel_funcTest(self, self.cpu, 'intercom_httpSoftwareQuery', u'app接口压力测试', u'终端软件查询更新接口', '20', u'企业管理平台创建了足够的测试样本', pos=(10,10))
        # create the func test panel
        panel_funcTest(self, self.cpu, 'intercom_httpLogin', u'app接口压力测试', u'HTTP登录接口', '20', u'企业管理平台创建了足够的测试样本', pos=(415,10))
        # create the func test panel
        panel_funcTest(self, self.cpu, 'intercom_httpGetAllGroupMember', u'app接口压力测试', u'HTTP获取所有群组与成员信息', '20', u'企业管理平台创建了足够的测试样本', pos=(415,190))
        # create the func test panel
        panel_funcTest(self, self.cpu, 'intercom_httpGetGroupQuery', u'app接口压力测试', u'HTTP群组信息查询接口', '20', u'企业管理平台创建了足够的测试样本', pos=(10,190))
        # create the func test panel
        panel_funcTest(self, self.cpu, 'intercom_inVoiceChannel', u'tcpapp对讲接口压力测试', u'TCP接入接口、TCP心跳接口、进入语音频道', '20', u'企业管理平台创建了足够的测试样本', pos=(10, 370))
        # create the func test panel
        panel_funcTest(self, self.cpu, 'getOnlineNumMax', u'对讲机在线数获取', u'获取对讲机能同时在线的最大用户数', '20', u'企业中用户基数有至少为2000', pos=(415, 370))

    def Start(self, event):
        self.cpu["data"].thread_unitTest = thread_unitTest(self.StartTest)

    def StartTesting_httpLogin(self, event):
        log.TestLog(u"开始测试HTTP登录流程...")
        pass

    def StartTesting_getAllGroupMemberInfo(self, event):
        log.TestLog(u"开始测试获取所有群组与成员信息的流程...")
        pass

    def Stop(self, event):
        log.TestLog(u"关闭企业管理平台测试",'')
        self.cpu["data"].thread_unitTest.terminate()
        self.cpu["data"].thread_unitTest.join()
        self.cpu["data"].thread_unitTest.isAlive()
        self.cpu["data"].inTest = False

    def StartTest(self):
        self.cpu["data"].testResult = []
        self.cpu["data"].reportDetails = []

        if self.cpu["data"].inTest == True:
            log.TestLog(u"测试正在进行中，请稍后再试...")
            return
        else:
            log.TestLog(u"开启企业管理平台测试",'')
            self.startTime = time.time()
            interface_objCompany = interfaceSet_company(self.cpu)
            self.endTime = time.time()
            self.useTime = self.endTime - self.startTime
            log.TestLog('Ran '+str(interface_objCompany.test_sum)+' test in ' + '%.3f seconds' % self.useTime)
            outputExcel(self.cpu["data"].testResult)

class Pager_dispatch_simulate(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        # create the dispatch_simulation
        panel_dispatch_simulation(self, self.cpu, 'aoTest500001', '123456', pos=(10,10))

class Pager_terminal_simulate(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        # create the dispatch_simulation
        panel_terminal_simulation(self, self.cpu, 'aoTest500003', '123456', pos=(10,10))

class Pager_intercom_simulation(wx.Panel):
    def __init__(self, panel, testType, cpu):
        self.panel = panel
        self.testType = testType
        self.cpu = cpu
        self.winWidth = cpu["data"].contentPanel_width
        self.winHeight = cpu["data"].contentPanel_height
        self.contentLine_height = cpu["data"].contentLine_height
        self.titleHeight = cpu["data"].contentTitle_height
        self.bgColor = cpu["data"].pageBgColor
        self.fontTitle = self.cpu["font"]["12_b"]
        self.fontContent = self.cpu["font"]["10_n"]

        wx.Panel.__init__(self, self.panel, size=(self.winWidth, self.winHeight), style=wx.EXPAND | wx.BORDER_SUNKEN | wx.ALL)
        self.SetBackgroundColour(self.bgColor)
        self.SetFont(self.fontContent)

        # create the dispatch_simulation
        panel_intercom_simulation(self, self.cpu, 'aoTest500002', '123456', '127.0.0.1', 54321, pos=(10,10))

        panel_intercom_simulation(self, self.cpu, 'aoTest500003', '123456', '127.0.0.1', 54322, pos=(270,10))

class Pager_groupAccountAdd(wx.Panel):
    def __init__(self, parent, cpu, pos=(0,0), size=(350,455)):
        self.cpu = cpu
        wx.Panel.__init__(self, parent, -1, pos, size, style=wx.BORDER_DOUBLE)
        self.SetBackgroundColour("#9f9f9f")
        font_12 = wx.Font(12, wx.DECORATIVE, wx.NORMAL, wx.NORMAL)
        self.SetFont(font_12)

        panel_companyGroupAdd(self, self.cpu, u"企业群组创建工具", pos=(0,0))
        panel_companyAccountAdd(self, self.cpu, u"企业用户创建工具", pos=(0,195))

class pager_voicePressure(wx.Panel):
    def __init__(self, parent, cpu, pos=(0,0), size=(350,858)):
        self.cpu = cpu
        wx.Panel.__init__(self, parent, -1, pos, size, style=wx.BORDER_DOUBLE)
        self.SetBackgroundColour("#9f9f9f")
        font_12 = wx.Font(12, wx.DECORATIVE, wx.NORMAL, wx.NORMAL)
        self.SetFont(font_12)

        panel_voicePressure_server1(self, self.cpu, u"模拟语音用户1", pos=(0,0))

        panel_voicePressure_server2(self, self.cpu, u"模拟语音用户2", pos=(0, 286))

        panel_voicePressure_server3(self, self.cpu, u"模拟语音用户3", pos=(0, 572))

class pager_interComUpDown(wx.Panel):
    def __init__(self, parent, cpu, pos=(0,0), size=(350,322)):
        self.cpu = cpu
        wx.Panel.__init__(self, parent, -1, pos, size, style=wx.BORDER_DOUBLE)
        self.SetBackgroundColour("#9f9f9f")
        font_12 = wx.Font(12, wx.DECORATIVE, wx.NORMAL, wx.NORMAL)
        self.SetFont(font_12)

        # 模拟对讲机上下线工具——无语音
        # 测试企业：fanxs1
        # 单组人数：500
        # 测试群组数：9
        # 实现流程：
        # Step1：9个群组同时上线
        # Step2：休息240秒
        # Step3：kill所有群组
        # Step4：休息60秒
        # Step5：开始下一次循环
        panel_interComUpDown_voice_false(self, self.cpu, u"对讲机上下线工具—无语音", pos=(0,0))

        # 模拟对讲机上下线工具——有语音
        # 测试企业：fanxs1
        # 单组人数：500
        # 测试群组数：6
        # 实现流程：
        # Step1：6个群组同时上线
        # Step2：休息240秒
        # Step3：kill所有群组
        # Step4：休息60秒
        # Step5：开始下一次循环
        panel_interComUpDown_voice_true(self, self.cpu, u"对讲机上下线工具—有语音", pos=(0,160))